Traffic driver for suggesting stores

ABSTRACT

A system and method for providing a suggested store at or through which to purchase a product or service. When a user enters a query for a product or service into a user interface, the system may use the query as a search argument to search files to find one or more pictures illustrating information about a product or service represented by the query. The picture could illustrate where the queried product or service may be purchased. Auto-complete processes may also be used to process the query as it is being entered, to generate an auto-suggestion key word based on fewer than all the letters of the query, to use as a search argument for the search. Both the query and the auto-suggestion key word may be used as search arguments to find the relevant picture in a variety of search logic sequences to provide the picture to the user.

RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.12/916,198, filed Oct. 29, 2010, which claims the benefit of the U.S.Provisional Patent Application Ser. No. 61/318,772, the benefit ofpriority of each of which is claimed hereby, and each are incorporatedherein by reference in their entirety.

TECHNICAL FIELD

The present disclosure generally relates to data processing techniques.More specifically, the present disclosure relates to methods and systemsfor managing how search results are processed and presented to a user ofa computer-based trading or e-commerce application.

BACKGROUND

Advancements in computer and networking technologies have enabledpersons to conduct commercial and financial transactions “on-line” viacomputer-based applications. This has given rise to a new era ofcommerce. A number of well-known retailers have expanded their presenceand reach by operating websites that facilitate this. In addition, manynew retailers, which operate exclusively online, have come intoexistence. The business models utilized by enterprises operating onlineare almost as varied as the products and services offered. For instance,some products and services are offered at fixed prices, while others areoffered via various auction methods, and still others are offered via asystem of classified ad listings. Some enterprises specialize in theselling of a specific type of product (e.g., books) or a specificservice (e.g., tax preparation), white others provide a myriad ofcategories of items and services from which to choose. Some enterprisesserve only as an intermediary, connecting sellers and buyers, whileothers sell directly to consumers.

Despite the many technical advances that have improved the state ofe-commerce, a great number of technical challenges and problems remain.One such problem involves determining how to provide a better shoppingexperience, and at the same time drive traffic to selected stores and/orlanding pages, so as to maximize the likelihood that a transaction(e.g., the sale of a product or service) will occur tier the store. Forinstance, when a shopper performs an on-line search fir a product orservice, it may often be the case that the shopper will find the productor service sought after but may not find a store, whether online orotherwise, from which to purchase the item. Furthermore, it is wellestablished that the presentation of an easier and more efficientshopping experience can affect whether potential buyers ultimatelypurchase the listed product or service. Providing a suggested store ator through which to purchase the product or service provides an easierand more efficient shopping experience, which is desired. At the sametime, from a seller's standpoint, it would be desirable to drive moretraffic for particular products to selected stores, online or otherwise,while at the same providing a better shopping experience for the buyer.

DESCRIPTION OF THE DRAWINGS

Some embodiments are illustrated by way of example and not limitation inthe figures of the accompanying drawings, in which:

FIG. 1 is a block diagram of a network environment including anetwork-connected client system and server system, with which anembodiment of the invention might be implemented;

FIG. 1A illustrates an example of a search term input box and a dropdown box for a graphical user interface for the web client of FIG. 1.

FIG. 2 illustrates an example of the various functional components ormodules of a network-connected client system and server system,according to an embodiment of the invention;

FIG. 3 illustrates a high-level entity-relationship diagram illustratingvarious tables that may be maintained within databases of the networkedsystem of FIG. 2;

FIG. 4A illustrates one manner in which configuration files useable inan embodiment of the invention might be identified;

FIG. 4B illustrates examples of fields that might be used inconfiguration files useable in an embodiment of the invention;

FIG. 5 illustrates a method useable in an embodiment of the invention;

FIG. 6 illustrates a further method useable in an embodiment of theinvention;

FIG. 7 illustrates how a picture relating to key search words might bepositioned in a drop-down box according to one embodiment of theinvention;

FIG. 8 illustrates one embodiment of stretching the drop-down boxaccording to an embodiment of the invention;

FIG. 9 illustrates an example of plain text keywords, products, and atraffic driver picture useable in an embodiment of the invention;

FIG. 10 illustrates an example of a picture in a drop down display witha web page in the background according to one embodiment of theinvention;

FIG. 11A illustrates two pictures useful in an embodiment of theinvention;

FIG. 11B illustrates an example of how a first picture of FIG. 11A canbe configured in a configuration file.

FIG. 11C illustrates how a second picture of FIG. 11A can be configuredin a configuration file.

FIG. 11D is a step by step illustration of the pictures that can bedisplayed with various, and the reasoning for the behavior of the systemin respect of the queries.

FIG. 12 is a block diagram of a machine in the form of a computer systemwithin which a set of instructions, for causing the machine to performany one or more of the methodologies discussed herein, may be executed.

DETAILED DESCRIPTION

Platform Architecture

FIG. 1 is a network diagram depicting a client-server system 100, withinwhich one example embodiment may be deployed. A networked system 2, inthe example forms of a network-based marketplace or publication system,provides server-side functionality, via a network 4 (e.g., the Internetor Wide Area Network (WAN)) to one or more clients. FIG. 1 illustrates,for example, a web client 6 (e.g., a browser, such as the InternetExplorer browser developed by Microsoft Corporation of Redmond,Washington State), and a programmatic client 8 executing on respectiveclient machines 10 and 12.

An Application Program Interface (API) server 14 and a web server 16 arecoupled to, and provide programmatic and web interfaces respectively to,one or more application servers 18. The application servers 18 host oneor more marketplace applications 20 and payment applications 22. Theapplication servers 18 are, in turn, shown to be coupled to one or moredatabases servers 24 that facilitate access to one or more databases 26.

The marketplace applications 20 may provide a number of marketplacefunctions and services to users that access the networked system 2. Thepayment applications 22 may likewise provide a number of paymentservices and functions to users. The payment applications 22 may allowusers to accumulate value (e.g., in a commercial currency, such as theU.S. dollar, or a proprietary currency, such as “points”) in accounts,and then later to redeem the accumulated value for products (e.g., goodsor services) that are made available via the marketplace applications20. While the marketplace and payment applications 20 and 22 are shownin FIG. 1 to both form part of the networked system 2, it will beappreciated that, in alternative embodiments, the payment applications22 may form part of a payment service that is separate and distinct fromthe networked system 2.

Further, while the system 100 shown in FIG. 1 employs a client-serverarchitecture, the present invention is of course not limited to such anarchitecture, and could equally well find application in a distributed,or peer-to-peer, architecture system, for example. The variousmarketplace and payment applications 20 and 22 could also be implementedas standalone software programs, which do not necessarily havenetworking capabilities.

The web client 6 accesses the various marketplace and paymentapplications 20 and 22 via the web interface supported by the web server16. Similarly, the programmatic client 8 accesses the various servicesand functions provided by the marketplace and payment applications 20and 22 via the programmatic interface provided by the API server 14. Theprogrammatic client 8 may, for example, be a seller application (e.g.,the TurboLister application developed by eBay Inc., of San Jose, Calif.)to enable sellers to author and manage listings on the networked system2 in an off-line manner, and to perform batch-mode communicationsbetween the programmatic client 8 and the networked system 2.

As illustrated by the user interface with reference number 30 of FIG.1A, a user may be presented with a search interface 31 in the web client6, with which the user can specify one or more search terms to be usedin a search request submitted to the networked system 2 via network 4.In some embodiments, in addition to specifying search terms, users maybe able to select certain item attributes, such as the desired color ofan item, the item categories that are to be searched, and so on. Afterreceiving and processing the search request, the networked system 2communicates a response to the web client 6. For instance, the responsecan be an Internet document or web page that, when rendered by the webclient 6, displays a search results page showing one or more itemlistings that satisfy the user's search request.

FIG. 1 also illustrates a third party application 28, executing on athird party server machine 30, as having programmatic access to thenetworked system 2 via the programmatic interface provided by the APIserver 14. For example, the third party application 28 may, utilizinginformation retrieved from the networked system 2, support one or morefeatures or functions on a website hosted by the third party. The thirdparty website may, for example, provide one or more promotional,marketplace or payment functions that are supported by the relevantapplications of the networked system 2.

Marketplace Applications

FIG. 2 is a block diagram illustrating multiple applications 20 and 22that, in one example embodiment, are provided as part of the networkedsystem 2. The applications 20 may be hosted on dedicated or sharedserver machines (not shown) that are communicatively coupled to enablecommunications between server machines. The applications themselves arecommunicatively coupled (e.g., via appropriate interfaces) to each otherand to various data sources, an as to allow information to be passedbetween the applications or so as to allow the applications to share andaccess common data. The applications may furthermore access one or moredatabases 26 via the database servers 28.

The networked system 2 may provide a number of publishing, listing andprice-setting mechanisms whereby a seller may list (or publishinformation concerning) goods or services for sale, a buyer can expressinterest in or indicate a desire to purchase such goods or services, anda price can be set for a transaction pertaining to the goods orservices. To this end, the marketplace applications 20 are shown toinclude at least one publication application 40 and one or more auctionapplications 42 which support auction-format listing and price settingmechanisms (e.g., English, Dutch, Vickrey, Chinese, Double, Reverseauctions etc.). The various auction applications 42 may also provide anumber of features in support of such auction-format listings, such as areserve price feature whereby a seller may specify a reserve price inconnection with a listing and a proxy-bidding feature whereby a biddermay invoke automated proxy bidding.

A number of fixed-price applications 44 support fixed-price listingformats (e.g., the traditional classified advertisement-type listing ora catalogue listing) and buyout-type listings. Specifically, buyout-typelistings (e.g., including the Buy-It-Now (BIN) technology developed byeBay Inc., of San Jose, Calif.) may be offered in conjunction withauction-format listings, and allow a buyer to purchase goods orservices, which are also being offered for sale via an auction, forfixed-price that is typically higher than the starting price of theauction.

Store applications 46 allow a seller to group listings within a“virtual” store, which may be branded and otherwise personalized by andfor the seller. Such a virtual store may also offer promotions,incentives and features that are specific and personalized to a relevantseller.

Reputation applications 48 allow users that transact, utilizing thenetworked system 2, to establish, build and maintain reputations, whichmay be made available and published to potential trading partners.Consider that where, for example, the networked system 2 supportsperson-to-person trading, users may otherwise have no history or otherreference information whereby the trustworthiness and credibility ofpotential trading partners may be assessed. The reputation applications48 allow a user, for example through feedback provided by othertransaction partners, to establish a reputation within the networkedsystem 2 over time. Other potential trading partners may then referencesuch a reputation for the purposes of assessing credibility andtrustworthiness.

Personalization applications 50 allow users of the networked system 2 topersonalize various aspects of their interactions with the networkedsystem 2. For example a user may, utilizing an appropriatepersonalization application 50, create a personalized reference page atwhich information regarding transactions to which the user is (or hasbeen) a party may be viewed. Further, a personalization application 50may enable a user to personalize listings and other aspects of theirinteractions with the networked system 2 and other parties.

The networked system may support a number of marketplaces that arecustomized, for example, for specific geographic regions. A version ofthe networked system 2 may be customized for the United Kingdom, whereasanother version of the networked system 2 may be customized for theUnited States. Each of these versions may operate as an independentmarketplace, or may be customized (or internationalized) presentationsof a common underlying marketplace. The networked system 2 mayaccordingly include a number of internationalization applications 52that customize information (and/or the presentation of information) bythe networked system 2 according to predetermined criteria (e.g.,geographic, demographic or marketplace criteria). For example, theinternationalization applications 52 may be used to support thecustomization of information for a number of regional websites that areoperated by the networked system 2 and that are accessible viarespective web servers 16.

Navigation of the networked system 2 may be facilitated by one or morenavigation applications 54. For example, a search application (as anexample of a navigation application) may enable key word searches oflistings published via the networked system 2. A browse application mayallow users to browse various category, catalogue, or inventory datastructures according to which listings may be classified within thenetworked system 2. Various other navigation applications may beprovided to supplement the search and browsing applications.

In order to make listings, available via the networked system 2, asvisually informing and attractive as possible, the marketplaceapplications 20 may include one or more imaging applications 56 whichusers may upload images for inclusion within listings. An imagingapplication 56 also operates to incorporate images within viewedlistings. The imaging applications 56 may also support one or morepromotional features, such as image galleries that are presented topotential buyers. For example, sellers may pay an additional fee to havean image included within a gallery of images for promoted items.

Listing creation applications 58 allow sellers conveniently to authorlistings pertaining to goods or services that they wish to transact viathe networked system 2, and listing management applications 60 allowsellers to manage such listings. Specifically, where a particular sellerhas authored and/or published a large number of listings, the managementof such listings may present a challenge. The listing managementapplications 60 provide a number of features (e.g., auto-relisting,inventory level monitors, etc.) to assist the seller in managing suchlistings. One or more post-listing management applications 62 alsoassist sellers with a number of activities that typically occurpost-listing. For example, upon completion of an auction facilitated byone or more auction applications 42, a seller may wish to leave feedbackregarding a particular buyer. To this end, a post-listing managementapplication 62 may provide an interface to one or more reputationapplications 48, so as to allow the seller conveniently to providefeedback regarding multiple buyers to the reputation applications 48.

Dispute resolution applications 64 provide mechanisms whereby disputesarising between transacting parties may be resolved. For example, thedispute resolution applications 64 may provide guided procedures wherebythe parties are guided through a number of steps in an attempt to settlea dispute. In the event that the dispute cannot be settled via theguided procedures, the dispute may be escalated to a third partymediator or arbitrator.

A number of fraud prevention applications 66 implement fraud detectionand prevention mechanisms to reduce the occurrence of fraud within thenetworked system 2.

Messaging applications 68 are responsible for the generation anddelivery of messages to users of the networked system 2, such messagesfor example advising users regarding the status of listings at thenetworked system 2 (e.g., providing “outbid” notices to bidders duringan auction process or to provide promotional and merchandisinginformation to users). Respective messaging applications 68 may utilizeany one of a number of message delivery networks and platforms todeliver messages to users. For example, messaging applications 68 maydeliver electronic mail (e-mail), instant message (IM), Short MessageService (SMS), text, facsimile, or voice (e.g., Voice over IP (VoIP))messages via the wired (e.g., the Internet), Plain Old Telephone Service(POTS), or wireless (e.g., mobile, cellular, WiFi, WiMAX) networks.

Merchandising applications 70 support various merchandising functionsthat are made available to sellers to enable sellers to increase salesvia the networked system 2. The merchandising applications 70 alsooperate the various merchandising features that may be invoked bysellers, and may monitor and track the success of merchandisingstrategies employed by sellers. The networked system 2 itself, or one ormore parties that transact via the networked system 2, may operateloyalty programs that are supported by one or more loyalty/promotionsapplications 72. For example, a buyer may earn loyalty or promotionspoints for each transaction established and/or concluded with aparticular seller, and be offered a reward for which accumulated loyaltypoints can be redeemed. An auto-complete application 74 supports anauto-complete function. Auto-complete modules are well known andauto-complete is a feature provided by many web browsers, search engine,and other technology devices. Auto-complete involves the programpredicting a word or phrase that the user wants to type into a commandor query line, without the user actually typing it in completely.Auto-complete can speed up human-computer interactions.

Data Structures

FIG. 3 is a high-level entity-relationship diagram, illustrating varioustables 200 that may be maintained within the databases 26, and that areutilized by and support the applications 20 and 22. A user table 102contains a record for each registered user of the networked system 2,and may include identifier, address and financial instrument informationpertaining to each such registered user. A user may operate as a seller,a buyer, or both, within the networked system 2. In one exampleembodiment, a buyer may be a user that has accumulated value (e.g.,commercial or proprietary currency), and is accordingly able to exchangethe accumulated value for items that are offered for sale by thenetworked system 2.

The tables 200 also include an items table 104 in which are maintaineditem records for goods and services that are available to be, or havebeen, transacted via the networked system 2. Each item record within theitems table 104 may furthermore be linked to one or more user recordswithin the user table 102, so as to associate a seller and one or moreactual or potential buyers with each item record.

A transaction table 106 contains a record for each transaction (e.g., apurchase or sale transaction) pertaining to items for which recordsexist within the items table 104.

An order table 108 is populated with order records, each order recordbeing associated with an order. Each order, in turn, may be with respectto one or more transactions for which records exist within thetransaction table 106.

Bid records within a bids table 110 each relate to a bid received at thenetworked system 2 in connection with an auction-format listingsupported by an auction application 2. A feedback table 112 is utilizedby one or more reputation applications 8, in one example embodiment, toconstruct and maintain reputation information concerning users. Ahistory table 114 maintains a history of transactions to which a userhas been a party. One or more attributes tables 116 record attributeinformation pertaining to items for which records exist within the itemstable 104. Considering only a single example of such an attribute, theattributes tables 116 may indicate a currency attribute associated witha particular item, the currency attribute identifying the currency of aprice for the relevant item as specified in by a seller.

In one embodiment, when a user enters, or as a user is entering, a queryinto the search interface 31 of web client 6 illustrated in FIG. 1A, thesystem functions to use the query (also called the “user key word”) as asearch argument for a search engine, to search a file to find one ormore pictures illustrating information about a product or servicerepresented by the query. The picture could illustrate where the queriedproduct or service may be purchased. The picture, which could be thename of an outlet store, a link to an online store, or a productsuggestion, or a combination thereof, is displayed in a display thatcould be a dropdown display 32 of the user interface of web client 6.Auto-complete processes may also be used to process the query togenerate an auto-suggestion key word to use as a search argument for thesearch engine.

In one embodiment, the query may be the name of a brand or of a product,and the relevant picture(s) will ultimately be displayed on the userinterface of web client 6, such as by being integrated or displayed intothe auto-complete drop-down box 32.

Configuration files could be used for the files that include thepictures. In computing, configuration files are well known, andconfigure the initial settings for some computer programs. They are usedfor user applications, server processes and operating system settings.The files are often written in ASCII and line-oriented, with linesterminated by a newline or carriage return/line feed pair, depending onthe operating system. They may be considered a simple database.

The pictures may be located in a configuration file. There may be manyconfiguration files, each with one picture in this particular embodimentalthough other compositions of pictures and configuration files could beused. When a user begins entering a search query, such as a brand or aproduct, the auto-complete application will be triggered into action bya minimum number of letters of the query entered by the user. As oneexample, the auto-complete application will be triggered by the enteringof three letters, and will generate an appropriate completed querycalled an “auto-suggestion key word” which can be used as a searchargument to search the configuration files to display a picture thatmatches the search argument.

In the above example, the reason to generate an auto-suggestion key wordafter three letters instead of two letters is that the system has agreater probability of guessing what the user wants by using threeletters to generate the auto-suggestion key word. For example, if theuser inputs “ip” (two letters), the system will not know for certainwhether the user wants an ipod or an iphone. On the other hand, if theuser inputs “ipo” (three letters), the system has a higher probabilityof being successful by surfacing ipod as the product the user isseeking.

The user may complete the entry (independent of the auto-completefunction) and may generate a user input key word query. The query maybe, for example, a brand name or a product. Both the user input key wordand the auto-suggestion key word can be used as search arguments for thesearch engine to search the configuration files for a picture thatmatches user input key word or the auto-suggestion key word, asexplained more fully below. The picture could inform the user by way ofthe drop down display of the brand and/or the store at which productssold under the brand, or product named by the search argument, can bepurchased.

There can be many configuration files, with pictures matched with theuser input key word (query) or the auto-suggestion key word. In oneembodiment there can be one picture per configuration file, and many,many configuration files. Configuration files may be distinguished byidentifying numbers such as 100, 110, 120, 130, . . . , N, or whateverother numbering system the system designer prefers to use. In oneembodiment the configuration files with the smaller numbers will havehigher priority and will be searched first, and then configuration fileswith larger numbers can be searched. For example, the lowest numberconfiguration file can be searched first and if no match is found, thenext higher numbered configuration file can be searched, and so on. Oneof ordinary skill in the art will recognize that this is but one searchscheme and that many search schemes can be used without departing fromthe spirit or the scope of the invention.

The mapping of pictures and associated destination page URLs can beimplemented in the configuration files. An example of a possible waynames and formats for the configuration files can be implemented is inFIG. 4A where the file name, the file number and an example of thenumber and of the picture are illustrated. FIG. 4B illustrates fieldsthat might be in the configuration files, with explanation for each. Theterm “period” is the period of time the file picture is valid. Alsoillustrated in FIG. 4B is a page URL which would be the page the pictureURL drives the user to when the user clicks the picture, also asdiscussed subsequently.

One search logic that can be used is to give the user input key wordpriority over the auto-suggestion key word. The system would search aconfiguration file using the user input query as a first searchargument. If a matched picture is found using the query, the picture canbe displayed. If there is no match using the query as a first searchargument, the system may search the configuration file for a picturematched with the auto-suggestion key word as a second search argument.The system will continue searching subsequent files in that order, firstusing the user input query and next using the auto-suggestion key word,until there is a matched picture found. The picture can then bepublished to the user interface via the auto-complete dropdown display,in the embodiment under discussion.

The foregoing search logic can be seen broadly in the method illustratedin FIG. 5. With auto-complete active, the user enters a query. When theuser entered the minimum number of letters that triggers theauto-complete, the system generates an auto-suggestion key word fromthose letters. The user may complete the query that can be used a keyword for search. Then the user key word (query) can be used by thesystem as the first search argument for searching the firstconfiguration file. If the search results in a match, the system willtransmit the picture for display on the user interface. If there is nomatch, the system can use the auto-suggestion key word as a secondsearch argument to search the file for a picture that matches. If theauto-suggestion key word results in a match, the system will transmitthe picture for display on the user interface. If no search is found thesearch continues with other files being searched in the sequencedescribed until a matched picture is found.

FIG. 6 illustrates a further method that could be used in the searchlogic of the embodiment under discussion. The system may use theauto-suggestion key word as a first search argument to search a firstfile. If there is a match, the system may transmit the matching pictureto be displayed on the user interface. If there is no match, the systemcan use the user input key word (query) as a second search argument tosearch the file for a picture that matches. If the query produces amatch, the system can transmit the picture for display on the userinterface. If no match is found with the query, the foregoing four stepscan be repeated with the next file. If those four steps do not result ina match, the system can search the next file using the same searchlogic, and so on until a match is found.

Those skilled in the art will recognize that because the auto-completefunction operates at electronic speeds, say microseconds, and the userkeying in letters operates at mechanical speeds, say in the order ofmilliseconds, there will be a period of time (from the time the minimumnumber of letters, say three letters as an example, triggers theauto-complete, until the time the user completes keying in a user inputkey word). During that period of time there may be no user input keyword. During that period of time, and without departing from thedescribed scope, the search logic can be modified from the abovedescription so as to search the configuration files using theauto-suggestion key word until the user input key word is generated. Ifa match is found using the auto-suggestion key word, the picture matchedcan be used for display at the user interface. If no match is foundduring that period of time using the auto-suggestion key word, thesystem can go back and search the configuration files that were alreadysearched with the auto-suggestion key word, this time using thenow-generated user input query to determine whether there is a match. Ifa match is found using the query it can be displayed. If the user querysearch “catches up” to the highest configuration file searched by theauto-suggestion key word with no match being found, the system can thenrevert to the search logic in FIG. 5 or FIG. 6 for the subsequentconfiguration files until a match is found.

In one embodiment, the picture can be displayed in the bottom of thedrop down box, after plain text search suggestions to locate thepicture, and/or popular product search suggestions to locate a suggestedproduct as desired. This is seen in FIG. 7. In this example, any of thequery's in the drop down list (ann taylor, ann demeule meester, annasui, ann taylor loft, anne klein, annalee, raggedy ann, anne kleinwatch, annalee dolls, harley davidson 10^(th) anniversary) can cause theauto-complete function to generate the single auto-suggestion key word“Ann Taylor.” A match with a picture in a configuration file, using theabove search strategy or another appropriate search strategy, will causethe picture “Ann Taylor outlet store” for this example to be transmittedto the user interface for display. When a user uses the keyboard (up ordown), or mouse, to control the cursor locating the picture, theselected picture can be highlighted with background color. If the userthen selects “enter,” the user can be led to the corresponding pageidentifying various aspects of the Ann Taylor outlet store. As seen inFIG. 8, stretching the search box can result in the picture beingstretched, but still remain left aligned if desired. FIG. 9 illustratesexamples of the Plain Text, Product, and Traffic Driver pictures thatmay be used. As illustrated in FIG. 9, the Traffic Driver picture candrive user traffic to the named outlet store. The picture can alsoinclude a link to the store as part of the traffic driver process.

FIG. 10 illustrates the picture in a drop down display with a web pagein the background.

An example of a search of configuration files is seen in FIGS. 11Athrough 11D. In FIG. 11A two graphics, or pictures, are illustrated, Afor Ann Taylor and B for Anna Sui. FIG. 11B shows one possibleconfiguration file for graphic A. FIG. 11C shows one possibleconfiguration file for graphic B. FIG. 11D shows a step by stepillustration of the pictures what would be displayed with variousqueries that could relate either to Ann Taylor or Anna Sui, and thereasoning for the behavior of the system.

FIG. 12 shows a diagrammatic representation of machine in the exampleform of a computer system 200 within which a set of instructions, forcausing the machine to perform any one or more of the methodologiesdiscussed herein, may be executed. In alternative embodiments, themachine operates as a standalone device or may be connected (e.g.,networked) to other machines. In a networked deployment, the machine mayoperate in the capacity of a server or a client machine in server-clientnetwork environment, or as a peer machine in a peer-to-peer (ordistributed) network environment. The machine may be a server computer,a client computer, a personal computer (PC), a tablet PC, a set-top box(STB), a Personal Digital Assistant (PDA), a cellular telephone, a webappliance, a network router, switch or bridge, or any machine capable ofexecuting a set of instructions (sequential or otherwise) that specifyactions to be taken by that machine. Further, while only a singlemachine is illustrated, the term “machine” shall also be taken toinclude any collection of machines that individually or jointly executea set (or multiple sets) of instructions to perform any one or more ofthe methodologies discussed herein.

The example computer system 200 includes a processor 202 (e.g., acentral processing unit (CPU) a graphics processing unit (GPU) or both),a main memory 204 and a static memory 206, which communicate with eachother via a bus 208. The computer system 200 may further include a videodisplay unit 210 (e.g., a liquid crystal display (LCD) or a cathode raytube (CRT)). The computer system 200 also includes an alphanumeric inputdevice 212 (e.g., a keyboard), a cursor control device 214 (e.g., amouse), a disk drive unit 216, a signal generation device 218 (e.g., aspeaker) and a network interface device 220.

The software 224 may further be transmitted or received over a network226 via the network interface device 220. While the machine-readablemedium 222 is shown in an example embodiment to be a single medium, theterm “machine-readable medium” should be taken to include a singlemedium or multiple media (e.g., a centralized or distributed database,and/or associated caches and servers) that store the one or more sets ofinstructions. The term “machine-readable medium” shall also be taken toinclude any medium that is capable of storing, encoding or carrying aset of instructions for execution by the machine and that cause themachine to perform any one or more of the methodologies of the presentinvention. The term “machine-readable medium” shall accordingly be takento include, but not be limited to, solid-state memories, optical andmagnetic media, and carrier wave signals.

Thus, a method and system using an auto-complete function to drivetraffic to selected stores have been described. Although the presentinvention has been described with reference to specific exampleembodiments, it will be evident that various modifications and changesmay be made to these embodiments without departing from the broaderspirit and scope of the invention. Accordingly, the specification anddrawings are to be regarded in an illustrative rather than a restrictivesense.

The Abstract of the Disclosure is provided to comply with 37 C.F.R.§1.72(b), requiring an abstract that will allow the reader to quicklyascertain the nature of the technical disclosure. It is submitted withthe understanding that it will not be used to interpret or limit thescope or meaning of the claims. In addition, in the foregoing DetailedDescription, it can be seen that various features are grouped togetherin a single embodiment for the purpose of streamlining the disclosure.This method of disclosure is not to be interpreted as reflecting anintention that the claimed embodiments require more features than areexpressly recited in each claim. Rather, as the following claimsreflect, inventive subject matter lies in fewer than all features of asingle disclosed embodiment. Thus the following claims are herebyincorporated into the Detailed Description, with each claim standing onits own as a separate embodiment.

What is claimed is:
 1. A system comprising one or more hardwareprocessors configured to include: a receiver configured to receive froma client machine letters of a user-generated key word that relates to aproduct or a service; an auto-complete application configured to receiveat least some of the letters of the user-generated key word and generatean auto-suggestion keyword in response to the receipt of fewer than allletters of the user-generated keyword; a database that comprises aplurality of files that relate user-generated keywords andauto-suggestion keywords to names of stores that sell products orservices to which the keywords relate; and a search engine configured tosearch the plurality of files, by use of both the user-generated keywordand the auto-suggestion keyword as search arguments, to find a name of astore that sells the product or the service; and a presentation moduleconfigured to present the results of the search to a user interface ofthe client machine, the search and the presentation comprisingperformance of a search of one of the plurality of files by use of theuser-generated keyword and, responsive to the search by use of theuser-generated keyword finding a name of a store that sells the productor the service, present the name of the store at the user interface ofthe client machine as selectable content and, responsive to the searchby use of the user-generated keyword not finding a name of a store thatsells the product or the service, performance of a search of the one ofthe plurality of files by use of the auto-suggestion keyword and,responsive to the search by use of the auto-suggestion keyword finding aname of a store that sells the product or the service, present the nameof the store at the user interface of the client machine as selectablecontent.
 2. The system of claim 1, wherein the search engine is furtherconfigured to find content comprising a plurality of different picturesof products in the plurality of files, to send the plurality ofdifferent pictures of products to the client machine as selectablepictures, and the search engine is further configured, responsive to aselection of one picture of the plurality of different pictures ofproducts at the client machine, to find pictures of various aspects ofthe selected one picture and transmit the pictures of the variousaspects to the client machine.
 3. The system of claim 1, wherein thecontent comprises a plurality of different pictures of an image of aproduct and a name of a store that sells the product.
 4. The system ofclaim 1, wherein the content comprises a plurality of different picturesof one of an identification of a store that sells products under a brandname and a link to an online page for the store, or an image of aproduct.
 5. The system of claim 1, wherein each of the plurality offiles is distinguished by an identifying number, the identifying numbersof the plurality of files ranging from lower numbers to higher numbers,and the search proceeds from files distinguished by lower identifyingnumbers to files distinguished by higher identifying numbers, or fromfiles distinguished by higher identifying numbers to files distinguishedby lower identifying numbers.
 6. A method comprising: receiving, from aclient machine, letters of a user-generated key word that relates to aproduct or a service; generating an auto-suggestion keyword in responseto detecting fewer than all letters of the user-generated keyword;searching a database that comprises a plurality of files that relateuser-generated keywords and auto-suggestion keywords to names of storesthat sell the products or the services to which the user-generatedkeywords and the auto-suggestion keywords relate, by one or morehardware processors, using both the user-generated keyword and theauto-suggestion keyword as search arguments, to find a name of a storethat sells the product or the service, and displaying the results of thesearch at a user interface of the client machine as selectable content,the searching and the displaying comprising searching one of theplurality of files by using the auto-suggestion keyword and, responsiveto the searching by using the auto-suggestion keyword finding a name ofa store that sells the product or the service, displaying the name ofthe store at the user interface of the client machine as selectablecontent and, responsive to the searching by using the auto-suggestionkeyword not finding a name of a store that sells the product or theservice, searching the one of the plurality of files by using the usergenerated keyword and, responsive to the searching by using theuser-generated keyword finding a name of a store that sells the productor the service, displaying the name of the store at the user interfaceof the client machine as selectable content.
 7. The method of claim 6,wherein the content comprises a plurality of different pictures ofproducts and transmitting the content comprises providing the pluralityof different pictures to the client machine as selectable pictures, themethod further comprising, responsive to a selection of one picture ofthe plurality of different pictures, finding pictures of various aspectsof the selected one picture and transmitting the pictures of the variousaspects to the client machine.
 8. The method of claim 6, wherein thecontent comprises one of an identification of a store that sellsproducts under a brand name and a link to an online page for the store,or an image of a product.
 9. The method of claim 6, wherein each of theplurality of files is distinguished by an identifying number, theidentifying numbers ranging from lower numbers to higher numbers, andthe searching proceeds from files distinguished by lower identifyingnumbers to files distinguished by higher identifying numbers, or fromfiles distinguished by higher identifying numbers to files distinguishedby lower identifying numbers.
 10. A computer-readable hardware storagedevice having embedded therein a set of instructions which, whenexecuted by one or more processors of a computer, causes the computer toexecute operations comprising: receiving from a client machine lettersof a user-generated key word that relates to a product or a service;generating an auto-suggestion keyword in response to detecting fewerthan all letters of the user-generated keyword; searching a plurality offiles, by one or more hardware processors, using both the user-generatedkeyword and the auto-suggestion keyword as search arguments to find aname of a store that sells the product or the service; and displayingthe results of the searching at a user interface of the client machine,the searching and the displaying comprising searching one of theplurality of files using a first of the search arguments and, responsiveto the searching by using the first of the search arguments finding aname of a store that sells the product or the service, displaying thename of the store at the user interface of the client machine asselectable content and, responsive to the searching of one of theplurality of files by using the first of the search arguments notfinding a name of a store that sells the product or the service,searching the one of the plurality of files by using the second of thesearch arguments and, responsive to the searching by using the second ofthe search arguments finding a name of a store that sells the product orthe service, displaying the name of the store at the user interface ofthe client machine as selectable content.
 11. The hardware storagedevice of claim 10, wherein searching the one of the plurality of filesis performed using the auto-suggestion keyword as the first of thesearch arguments argument prior to using the user generated keyword as asearch argument.
 12. The hardware storage device of claim 10, whereinsearching the one of the plurality of files is performed using theuser-generated keyword as the first of the search arguments.
 13. Thehardware storage device of claim 10, wherein the content comprises aplurality of different pictures of products and transmitting the contentcomprises providing the plurality of different pictures to the clientmachine as selectable pictures, the method further comprising,responsive to a selection of one picture of the plurality of differentpictures, finding pictures of various aspects of the selected onepicture and transmitting the pictures of the various aspects to theclient machine.
 14. The hardware storage device of claim 10, wherein thecontent comprises an image of a product and a name of a store that sellsthe product.
 15. The storage hardware device of claim 10, wherein thecontent comprises one of an identification of a store that sellsproducts under a brand name and a link to an online page for the store,or an image of a product.
 16. The hardware storage device of claim 10,wherein each of the plurality of files is distinguished by anidentifying number, the identifying numbers ranging from lower numbersto higher numbers, and the searching proceeds from files distinguishedby lower identifying numbers to files distinguished by higheridentifying numbers, or from files distinguished by higher identifyingnumbers to files distinguished by lower identifying numbers.